Londons historie går cirka to tusinde år tilbage, selvom keltiske bosættelser på stedet ikke kan påvises. Derfor menes byen at være anlagt af romerne som Londinium efter deres erobring af Britannien, anført af kejser Claudius i år 43 e.Kr. Efter romernes tilbagetog fra øen blev London overtaget af angelsaksere, der jævnede byen med jorden i slutningen af 9. århundrede.
Efter normannernes erobring i 1066 blev London den nye hovedstad i Kongeriget England, i stedet for Winchester, en status den har beholdt lige siden. I middelalderen blev byen gentagne gange angrebet af både inden- og udenlandske fjender. Med Reformationen og kongemagtens efterfølgende overtagelse af det kirkelige gods indledtes en æra i byens historie med økonomisk vækst.
Byen oplevede to på hinanden følgende katastrofer, først pestudbruddet i 1665 og den store brand året efter. Byen formåede dog relativt hurtigt at komme sig efter disse katastrofer og voksede i betydning parallelt med England. I løbet af det 18. og 19. århundrede var London verdens største by samt hovedstad i Det Britiske Imperium, og befolkningstallet blev flerdoblet. Udvidelsen af transportforbindelser til byen i begyndelsen af det 20. århundrede medførte, at den voksede ud over sine historiske grænser.
Under 2. verdenskrig blev store dele af byen ødelagt af de tyske luftbombardementer. Efter krigen faldt befolkningstallet som følge af befolkningens udflytning til satellitbyerne rundt om London. I 1965 blev det administrative område Greater London, som omfattede London og omkringliggende områder, oprettet. I havneområdet London Docklands begyndte i 1980'erne et omfattende byudviklingsprogram med mange nye højhuse. Gennem tiderne har London været mål for terrorbomber bl.a. fra IRA men også fra andre grupper så sent som i 2005.